package xyz.zyl2020.java8.datetime;

import java.time.Instant;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.temporal.ChronoUnit;
import java.time.temporal.TemporalUnit;

/**
 * @author ZhuYinglong
 * @date 2020/11/5 0005
 */
public class InstantDemo {

    public static void main(String[] args) {

        // 从系统时钟获取当前时间戳，值得注意的是通过此方法获取的时间戳是基于UTC标准时区的
        Instant instant1 = Instant.now();
        System.out.println("01: " + instant1);

        // 可以通过设置时区，来获取指定时区的日期-时间
        ZonedDateTime zonedDateTime = instant1.atZone(ZoneId.systemDefault());
        System.out.println("01: " + zonedDateTime.toLocalDateTime());

        // 通过指定字符串转换为 Instant 实例
        Instant instant2 = Instant.parse("2020-11-05T11:22:33Z");
        System.out.println("03: " + instant2);

        // 是否在指定时间戳之后
        System.out.println("04: " + instant2.isAfter(instant1));
        // 是否在指定时间戳之前
        System.out.println("05: " + instant2.isBefore(instant1));

    }
}
